/**
 * @Author Stringzhua
 * @Date 2024/1/15 18:49
 * description:逻辑或运算符 ||和|
 */
public class LogicOperator02 {
    public static void main(String[] args) {
        //短路或|| 条件1||条件2   两个条件中只要有一个成立,结果为true,否则为false;
        int age = 50;
        if (age > 20 || age < 30) {
            System.out.println("ok100");
        }
        //逻辑或| 条件1|条件2  只要有一个条件成立,结果为true,否则为false
        if (age > 20 | age < 30) {
            System.out.println("ok200");
        }
        //区别
        //|| 和 | 的区别:
        //||(短路或) 如果第一个条件为true,则第二个条件不会判断,最终结果为true   效率高,推荐使用
        //|(逻辑或) 不管第一个条件是否为true,第二个条件都要判断,效率低
        int a = 4;
        int b = 9;
        if (a > 1 || ++b > 4) {
            System.out.println("ok300");
        }
        System.out.println("a=" + a + "b = " + b);//4 9
        if (a > 1 | ++b > 4) {
            System.out.println("ok400");
        }
        System.out.println("a=" + a + "b = " + b);//4 10
    }
}
